package top.bug.blog.service;

import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
import com.baomidou.mybatisplus.extension.service.IService;
import top.bug.blog.entity.dto.album.*;
import top.bug.blog.entity.dto.common.BatchRequest;
import top.bug.blog.entity.dto.common.OrderModRequest;
import top.bug.blog.entity.dto.common.SingleRequest;
import top.bug.blog.entity.po.Album;
import top.bug.blog.entity.po.AlbumPic;

import java.util.List;

/**
 * @author <a href="https://github.com/jiusi66">九思.</a>
 * @email 10837907@qq.com
 * @from <a href="https://www.52bug.top">递归茶馆-www.52bug.top</a>
 * @description 相册 接口
 */
public interface AlbumService extends IService<Album> {

    /**
     * 获取列表
     */
    Page<Album> getList(AlbumQueryRequest queryRequest);

    /**
     * 添加
     */
    Boolean add(AlbumAddRequest addRequest);

    /**
     * 修改
     */
    Boolean edit(AlbumUpdateRequest updateRequest);

    /**
     * 删除
     */
    Boolean delete(BatchRequest batchRequest);

    /**
     * 修改排序
     */
    Boolean editOrder(OrderModRequest modRequest);

    /**
     * 上传图片
     */
    List<String> uploadPic(AlbumUploadRequest uploadRequest);

    /**
     * 获取图片列表
     */
    List<AlbumPic> getPicList(SingleRequest singleRequest);

    /**
     * 删除图片
     */
    Boolean deletePic(BatchRequest batchRequest);

    /**
     * 相册图片重命名
     */
    void renamePic(AlbumPicUpdateRequest updateRequest);

}